home *** CD-ROM | disk | FTP | other *** search
/ Tricks of the Mac Game Programming Gurus / TricksOfTheMacGameProgrammingGurus.iso / More Source / C⁄C++ / Peter's Final Project / jpeg-5b / jconfig.doc < prev    next >
Text File  |  1994-05-23  |  5KB  |  156 lines

  1. /*
  2.  * jconfig.doc
  3.  *
  4.  * Copyright (C) 1991-1994, Thomas G. Lane.
  5.  * This file is part of the Independent JPEG Group's software.
  6.  * For conditions of distribution and use, see the accompanying README file.
  7.  *
  8.  * This file documents the configuration options that are required to
  9.  * customize the JPEG software for a particular system.
  10.  *
  11.  * The actual configuration options for a particular installation are stored
  12.  * in jconfig.h.  On many machines, jconfig.h can be generated automatically
  13.  * or copied from one of the "canned" jconfig files that we supply.  But if
  14.  * you need to generate a jconfig.h file by hand, this file tells you how.
  15.  *
  16.  * DO NOT EDIT THIS FILE --- IT WON'T ACCOMPLISH ANYTHING.
  17.  * EDIT A COPY NAMED JCONFIG.H.
  18.  */
  19.  
  20.  
  21. /*
  22.  * These symbols indicate the properties of your machine or compiler.
  23.  * #define the symbol if yes, #undef it if no.
  24.  */
  25.  
  26. /* Does your compiler support function prototypes?
  27.  * (If not, you also need to use ansi2knr, see install.doc)
  28.  */
  29. #define HAVE_PROTOTYPES
  30.  
  31. /* Does your compiler support the declaration "unsigned char" ?
  32.  * How about "unsigned short" ?
  33.  */
  34. #define HAVE_UNSIGNED_CHAR
  35. #define HAVE_UNSIGNED_SHORT
  36.  
  37. /* Define "void" as "char" if your compiler doesn't know about type void.
  38.  * NOTE: be sure to define void such that "void *" represents the most general
  39.  * pointer type, e.g., that returned by malloc().
  40.  */
  41. /* #define void char */
  42.  
  43. /* Define "const" as empty if your compiler doesn't know the "const" keyword.
  44.  */
  45. /* #define const */
  46.  
  47. /* Define this if an ordinary "char" type is unsigned.
  48.  * If you're not sure, leaving it undefined will work at some cost in speed.
  49.  * If you defined HAVE_UNSIGNED_CHAR then the speed difference is minimal.
  50.  */
  51. #undef CHAR_IS_UNSIGNED
  52.  
  53. /* Define this if your system has an ANSI-conforming <stddef.h> file.
  54.  */
  55. #define HAVE_STDDEF_H
  56.  
  57. /* Define this if your system has an ANSI-conforming <stdlib.h> file.
  58.  */
  59. #define HAVE_STDLIB_H
  60.  
  61. /* Define this if your system does not have an ANSI/SysV <string.h>,
  62.  * but does have a BSD-style <strings.h>.
  63.  */
  64. #undef NEED_BSD_STRINGS
  65.  
  66. /* Define this if your system does not provide typedef size_t in any of the
  67.  * ANSI-standard places (stddef.h, stdlib.h, or stdio.h), but places it in
  68.  * <sys/types.h> instead.
  69.  */
  70. #undef NEED_SYS_TYPES_H
  71.  
  72. /* For 80x86 machines, you need to define NEED_FAR_POINTERS,
  73.  * unless you are using a large-data memory model or 80386 flat-memory mode.
  74.  * On less brain-damaged CPUs this symbol must not be defined.
  75.  * (Defining this symbol causes large data structures to be referenced through
  76.  * "far" pointers and to be allocated with a special version of malloc.)
  77.  */
  78. #undef NEED_FAR_POINTERS
  79.  
  80. /* Define this if your linker needs global names to be unique in less
  81.  * than the first 15 characters.
  82.  */
  83. #undef NEED_SHORT_EXTERNAL_NAMES
  84.  
  85. /* Although a real ANSI C compiler can deal perfectly well with pointers to
  86.  * unspecified structures (see "incomplete types" in the spec), a few pre-ANSI
  87.  * and pseudo-ANSI compilers get confused.  To keep one of these bozos happy,
  88.  * define INCOMPLETE_TYPES_BROKEN.  This is not recommended unless you
  89.  * actually get "missing structure definition" warnings or errors while
  90.  * compiling the JPEG code.
  91.  */
  92. #undef INCOMPLETE_TYPES_BROKEN
  93.  
  94.  
  95. /*
  96.  * The following options affect code selection within the JPEG library,
  97.  * but they don't need to be visible to applications using the library.
  98.  * To minimize application namespace pollution, the symbols won't be
  99.  * defined unless JPEG_INTERNALS has been defined.
  100.  */
  101.  
  102. #ifdef JPEG_INTERNALS
  103.  
  104. /* Define this if your compiler implements ">>" on signed values as a logical
  105.  * (unsigned) shift; leave it undefined if ">>" is a signed (arithmetic) shift,
  106.  * which is the normal and rational definition.
  107.  */
  108. #undef RIGHT_SHIFT_IS_UNSIGNED
  109.  
  110.  
  111. #endif /* JPEG_INTERNALS */
  112.  
  113.  
  114. /*
  115.  * The remaining options do not affect the JPEG library proper,
  116.  * but only the sample applications cjpeg/djpeg (see cjpeg.c, djpeg.c).
  117.  * Other applications can ignore these.
  118.  */
  119.  
  120. #ifdef JPEG_CJPEG_DJPEG
  121.  
  122. /* These defines indicate which image (non-JPEG) file formats are allowed. */
  123.  
  124. #define BMP_SUPPORTED        /* BMP image file format */
  125. #define GIF_SUPPORTED        /* GIF image file format */
  126. #define PPM_SUPPORTED        /* PBMPLUS PPM/PGM image file format */
  127. #undef RLE_SUPPORTED        /* Utah RLE image file format */
  128. #define TARGA_SUPPORTED        /* Targa image file format */
  129.  
  130. /* Define this if you want to name both input and output files on the command
  131.  * line, rather than using stdout and optionally stdin.  You MUST do this if
  132.  * your system can't cope with binary I/O to stdin/stdout.  See comments at
  133.  * head of cjpeg.c or djpeg.c.
  134.  */
  135. #undef TWO_FILE_COMMANDLINE
  136.  
  137. /* Define this if your system needs explicit cleanup of temporary files.
  138.  * This is crucial under MS-DOS, where the temporary "files" may be areas
  139.  * of extended memory; on most other systems it's not as important.
  140.  */
  141. #undef NEED_SIGNAL_CATCHER
  142.  
  143. /* By default, we open image files with fopen(...,"rb") or fopen(...,"wb").
  144.  * This is necessary on systems that distinguish text files from binary files,
  145.  * and is harmless on most systems that don't.  If you have one of the rare
  146.  * systems that complains about the "b" spec, define this symbol.
  147.  */
  148. #undef DONT_USE_B_MODE
  149.  
  150. /* Define this if you want percent-done progress reports from cjpeg/djpeg.
  151.  */
  152. #undef PROGRESS_REPORT
  153.  
  154.  
  155. #endif /* JPEG_CJPEG_DJPEG */
  156.